package com.maiji.cloud.request.shopingmall;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;

import java.util.Date;
import java.util.List;

@NoArgsConstructor
@Data
@Accessors(chain = true)
public class OrderRefundReqData {

    @ApiModelProperty(value="ID")
    private String uuId;

    @ApiModelProperty(value="订单ID")
    private String orderId;

    @ApiModelProperty(value = "订单编号")
    private String orderNo;

    @ApiModelProperty(value="用户昵称")
    private String nickName;

    @ApiModelProperty(value="退货运单号")
    private String refundNum;

    @ApiModelProperty(value = "审核拒绝原因")
    private String refusalReason;

    @ApiModelProperty(value = "退款状态，-1未申请退款或已撤销退款，0申请退款，1同意，2待退款，3退款中，4退款成功，5拒绝")
    private Integer status;

    @ApiModelProperty(value = "退款类型，1-仅退款未发货，2-退款退货")
    private Integer type;

    @ApiModelProperty(value="排序字段，默认值：in_time申请时间")
    private String orderBy = "sor.in_time";

    @ApiModelProperty(value="排序规则，默认值：desc降序")
    private String orderType = "desc";

    @ApiModelProperty(value="订单状态：0-待付款, 1-待发货，2-待收货，3-已收货/待评价，4-已取消，5-已评价，6-订单完成")
    private Integer orderStatus;

    @ApiModelProperty(value="退款金额[]")
    private List<Double> refundManeys;

    @ApiModelProperty(value="订单金额[]")
    private List<Double> amounts;

    @ApiModelProperty(value="配送费[]")
    private List<Integer> deliveryFees;

    @ApiModelProperty(value="减肥基金[]")
    private List<Double> funds;

    @ApiModelProperty(value="积分金额[]")
    private List<Double> integralMoneys;

    @ApiModelProperty(value="优惠卷金额[]")
    private List<Integer> coupons;

    @ApiModelProperty(value="申请退款时间[]")
    private List<Date> inTimes;

    @ApiModelProperty(value="申请审核时间[]")
    private List<Date> stayRefundTimes;

    @ApiModelProperty(value="回收退货时间[]")
    private List<Date> confirmReceivedTimes;

    @ApiModelProperty(value="执行退款时间[]")
    private List<Date> refundMiddleTimes;

    @ApiModelProperty(value="完成退款时间[]")
    private List<Date> refundFinishTimes;

    @ApiModelProperty(value="创建订单时间[]")
    private List<Date> createDates;

    @ApiModelProperty(value="支付时间[]")
    private List<Date> payDates;

    @ApiModelProperty(value="发货时间[]")
    private List<Date> sendDates;

    @ApiModelProperty(value="收货时间[]")
    private List<Date> receiveDates;

    @ApiModelProperty(value="确认收货")
    private Boolean confirmReceived;

    @ApiModelProperty(value="退款金额")
    private Double refundManey;

    @ApiModelProperty(value="是否退回快递费")
    private Boolean returnDeliveryFee;

    @ApiModelProperty(value="是否退回减肥基金")
    private Boolean returnFund;

    @ApiModelProperty(value="是否退回积分")
    private Boolean returnIntegral;

    @ApiModelProperty(value="是否退回优惠卷")
    private Boolean returnCoupon;

    @ApiModelProperty(value="操作者ID")
    private String userId;

    @ApiModelProperty(value="执行密码")
    private String executePwd;

}
